home *** CD-ROM | disk | FTP | other *** search
- /*
- …ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕª
- ∫ o:Clip ∫
- ∫ An Object Oriented Extension to Clipper 5.01 ∫
- ∫ (c) 1991 Peter M. Freese, CyberSoft ∫
- »ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕº
-
- Version 1.01x - 06/25/92 - the changes were made by JHK, JHK-Software, Piestany
-
- */
-
- #xcommand EXPORT: =>
- #xcommand PRIVATE: =>
- #xcommand PROTECTED: =>
-
- #xcommand METHOD PROCEDURE <*rest*> => ;
- procedure <rest>;;
- local self:=__GetSelf(QSelf())
-
- #xcommand METHOD FUNCTION <*rest*> => ;
- function <rest>;;
- local self:=__GetSelf(QSelf())
-
- #xcommand CONSTRUCTOR <ctor>([<list,...>]) NO PARENT => ;
- function <ctor>(<list>);;
- local self:=__ParentNew(QSelf());;
- local __Dummy:=if(QSelf()\[1]==nil,__PutSelf(nil),)
-
- #xcommand CONSTRUCTOR <ctor>([<list,...>]) => ;
- constructor <ctor>(<list>) parent new(<list>)
-
- #xcommand CONSTRUCTOR <ctor>([<list,...>]) PARENT <method> => ;
- constructor <ctor>(<list>) parent <method>(<list>)
-
- #xcommand CONSTRUCTOR <ctor>([<list,...>]) PARENT <method>([<pars,...>]) => ;
- function <ctor>(<list>);;
- local self:=__ParentNew(QSelf());;
- local __Dummy:=if(QSelf()\[1]==nil,__PutSelf(nil),QSelf()\[1]:<method>(<pars>))
-
- #xcommand CLASS <name> [FROM <parent>] => CLASS <name> [XFROM <parent>()]
- #xcommand CREATE CLASS <name> [FROM <parent>] => CLASS <name> [XFROM <parent>()]
-
- #xcommand CLASS <name> [ XFROM <parent> ] => ;
- FUNCTION <name>;;
- STATIC hClass := 0, oParent;;
- LOCAL oNew;;
- if hClass == 0;;
- oParent := __DefineClass(<"name">,<{parent}>)
-
- #xcommand VAR <var1> [,<varN>] => ;
- __AddVar(<"var1">) [; __AddVar(<"varN">)]
-
- #xcommand METHOD <methodName> [,<*methodN*>] => ;
- __AddMethod(<"methodName">, <"methodName">) [; METHOD <methodN>]
-
- #xcommand METHOD <methodName> = <methodUDF> [,<*methodN*>] => ;
- __AddMethod(<"methodName">, <"methodUDF">) [; METHOD <methodN>]
-
- #xcommand ENDCLASS => ;
- hClass := __MakeClass();;
- end;;
- oNew := __ClassIns(hClass);;
- oNew\[1] := oParent;;
- RETURN oNew
-
- #xtranslate :: => self:
-
- #xtranslate super => parent
-
- #xtranslate parent([<class>]):<method> => __PARENT(#<class>):<method>
-
- #xtranslate parent:<method>:<*Anything*> => ;
- #error Chaining not allowed after overridden method call.
-
-